s1_read_last_two_bytes_of_a_mbr_backup_file(){
   local file_path=$1
   local last_bytes=$(tail -c 2 "$file_path" | od -A n -t x1 | tr -d ' \n')
   if ["$last_bytes"= "55aa" ];then
      echo "YES"
   else
      echo "NO"
   fi
}
s2_read_mbr_partition_table_info(){
     echo -n  'echo "ibase=16;800" | bc'
     echo -n ' '
     local mbr_backup_file=$1
     for i in {0..3};do
         local offset=$((446 + i * 16))
         local partition_entry=$(od -j $offset -N 16 -t x1 -An "$mbr_backup_file" | tr -d ' \n')
         local partition_type=$(echo $partition_entry | cut -c 9-10)
         if [ "$partition_type" != "00" ]; then
            local start_sector_hex=$(echo $partition_entry | cut -c 17-24 |tr '[:lower:]' '[:upper:]')
            local start_sector=$(echo "ibase=16;$start_sector_hex" | bc)
            local end_sector_size_hex=$(echo $partition_entry | cut -c 33-40 | tr '[:lower:]' '[:upper:]')
            local end_sector_size=$(echo "ibase=16;$end_sector_size_hex" | bc)
            local end_sector=$((start_sector + end_sector_size - 1))
                 if [ $i -eq 0 ];then
                   echo -n "$end_sector "
                   echo -n "$start_sector "
                 else
                   echo -n "$end_sector"
                    fi
           fi
     done
}
s3_parrse_partition_info(){
    fdisk_output=$(cat)
    disk_size_bytes=$(echo "$fdisk_output" | grep "Disk /dev/vda:" | awk '{print $5}')
    disk_sizr_sectors=$(echo "$fdisk_output" | grep "Disk /dev/vda:" | awk '{print $7}')
    physical_sector_size=$(echo "$fdisk_output" | grep "Sector size" | awk '{print $4}')
    first_partition_start_sector=$(echo "$fdisk_output" | grep "/dev/vad1" | awk '{print $3}')
    first_partition_end_sector=$(echo "$fdisk output" | grep "/dev/vad1" | awk '{print $4}')
    first_partition_type=$(echo "$fdisk_output" | grep "/dev/vda1" | awk '{print $8}')
    echo "disk size in bytes:$disk_size_bytes"
    echo "disk size in sectors:$disk_size_sectors"
    echo "physical sector size in bytes:$physical_sector_size"
    echo "first partition start sector id:$first_partition_start_sector"
    echo "first partition end sector id:$first_partition_end_sector"
    echo "first partition type:$first_partition_type"
}
s4_run_passwd_as_plain_user_and_get_status() {
   oversleeping_path=$(which oversleeping)
   chown root "$oversleeping_path"
   chmod 755 "$oversleeping_path"
   $oversleeping_path $
   ps -o uid,euid,ruid -C 'oversleeping' | awk 'NR>1 {print $1","$2","$3}'
}
s5_add_a_scheduled_task(){
  (crontab -1 2>/dev/null; echo "*/5 * * * * date +\\%Y\\%m\\%d_\\%H\\%M\\%S >> \$HOME/test_crontab") | crontab -

}
